package com.xidian.zhiancloud.model;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.util.Date;

/**
 * 未遂事件基本信息
 * @Author ZC
 */
@Data
@TableName(value="t_miss_accident_message")
public class MissAccidentMessage {
    /**
     *   id
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     *   公司id
     */
    private Long companyId;

    /**
     *   未遂事件名称
     */
    @Excel(name="未遂事件名称",orderNum = "1")
    private String name;

    /**
     *   事故发生地点
     */
    @Excel(name="事故发生地点",orderNum = "2")
    private String position;

    /**
     *   事故发生时间
     */
    @Excel(name="事故发生时间",orderNum = "3")
    private Date happenTime;

    /**
     *   事故责任单位/部门id
     */
    private Long departmentId;

    /**
     *   责任人id，多个责任人逗号分隔
     */
    private String responsibleId;

    /**
     *   涉及人员id,多个人员逗号分隔
     */
    private String personInvolved;

    /**
     *   事故发生简要经过
     */
    @Excel(name="事故发生简要经过",orderNum = "5")
    private String briefHistory;

    /**
     *   已采取的措施
     */
    @Excel(name="已采取的措施",orderNum = "6")
    private String measuresTaken;

    /**
     *   附件url，多个url用逗号分隔
     */
    private String annexUrls;

    /**
     *   登记时间
     */
    @Excel(name="上报时间",orderNum = "14")
    private Date createTime;

    /**
     *   登记人id
     */
    private Long creator;

    /**
     *   事故发生的主要原因:0人为因素，1设备和物料因素，2环境因素，3管理因素
     */
    private Integer mainCause;

    /**
     *   人为因素：0缺乏工作程序，1不知道正确程序，2知道程序但未遵守，3因心理或生理原因不能完成工作，
     *   4缺少个人防护装备,5工作中任务难度大而不能实施，6不知道需要个人防护装备，
     *   7知道需要个人防护装备，但不会使用，8缺乏应急设施，9应急设施没有正确的发挥作用，
     *   10不知道如何使用应急设施，11其他
     */
    private String personFactor;

    /**
     *   设备和物料因素:0质量或条件有缺陷，1设计缺陷，2未识别出危害，3未报告危害性条件，4缺乏设备检查，
     *   5识别和报告了危害性条件，但未及时查明原因，6未能检测出危害，7使用不适当的工具或物料，8没有适当的设备，
     *   9设计时未考虑操作因素，10其他
     */
    private String deviceFactor;

    /**
     *   环境因素:0设备或员工的位置缺陷，1工作空间不够，2照明/噪音/空气污染/极端温度/通风/振动/辐射/地面和工作面,
     *   3超负荷人工搬运或搬运程序错误，4工作中任务难度大而不能实施，5其他
     */
    private String environmentFactor;

    /**
     *   管理因素:0监督人员未能发现、阻止或报告危险条件，1监督人员未能发现、阻止或报告违章现象，
     *   2管理人员没有将存在的或可能的危险通知员工，3管理人员没有使员工和监督人员对安全负责任，
     *   4管理人员没有对已知的危险状态采取措施，5缺乏对监督人员的培训，6其他
     */
    private String manageFactor;
}